#ifndef CAPTURE_H
#define CAPTURE_H

#include <GxIAPI.h>
#include <DxImageProc.h>
#include "global.h"
#include <QThread>

class Capture : public QThread
{
    Q_OBJECT

public:
    Capture();
    ~Capture();

    bool openCapture (int nID);
    void closeCapture();
    void stopCapture();
    //English:
    //Chinese:( Encode UTF-8)这是一个虚函数，继承于QThread，
    //          这个函数是在独立线程运行的，其他的不在独立线程
    void run ();

signals:
    void sendMat (cv::Mat);

private:
    bool getAImageFromCapture(GX_FRAME_DATA &inStFrameData);
    GX_DEV_HANDLE hDevice;

    bool stop;
    bool bOpenSuccess;
};

#endif // CAPTURE_H
